package com.fr.base.core;

import java.util.ArrayList;
import java.util.List;

public abstract class ReservedWords
{
  private static final List staticReservedWordList = new ArrayList();
  public static final ReservedWords OP = new ReservedWords()
  {
    public String getKeyWords()
    {
      return "op";
    }

    public String getDescription()
    {
      return "op是FineReport中用来确定不同操作的参数。";
    }
  };
  public static final ReservedWords REPORTLET = new ReservedWords()
  {
    public String getKeyWords()
    {
      return "reportlet";
    }

    public String getDescription()
    {
      return "reportlet是FineReport中用来确定访问模板的路径的参数。";
    }
  };
  public static final ReservedWords REPORTLETS = new ReservedWords()
  {
    public String getKeyWords()
    {
      return "reportlets";
    }

    public String getDescription()
    {
      return "reportlets是FineReport中用来确定访问多张模板的路径的参数。";
    }
  };
  public static final ReservedWords SESSIONID = new ReservedWords()
  {
    public String getKeyWords()
    {
      return "sessionID";
    }

    public String getDescription()
    {
      return "sessionID是当前访问模板的会话标识参数。";
    }
  };

  public ReservedWords()
  {
    staticReservedWordList.add(this);
  }

  public abstract String getKeyWords();

  public abstract String getDescription();

  public static int getReservedWordsCount()
  {
    return staticReservedWordList.size();
  }

  public static ReservedWords getReservedWords(int paramInt)
  {
    return ((ReservedWords)staticReservedWordList.get(paramInt));
  }
}